Method for predicting the voltage of a battery

ABSTRACT

The present invention discloses a method for predicting the voltage of a battery, in particular a vehicle battery. The method according to the invention makes it possible to predict a voltage drop before it actually occurs as a result of a load. For this purpose, a filtered battery voltage and a filtered battery current are first of all determined from battery data, such as the battery voltage, the battery current, the battery temperature and the dynamic internal resistance. The resistive voltage drop across the dynamic internal resistance is determined from the difference current between the filtered battery current and the predetermined load current. Furthermore, a polarization voltage is calculated as a function of the filtered battery current, and is then filtered. The predicted battery voltage is calculated from the filtered battery voltage, minus the resistive voltage drop and the filtered polarization voltage. A decision on further measures can be made on the basis of this predicted battery voltage.

CROSS REFERENCE TO RELATED APPLICATION

This application is the National Stage filing under 35 U.S.C. 371 ofInternational Application No. PCT/EP2003/011484, filed Oct. 16, 2003,and claims priority of German Patent Application 102 57 588.6, filedDec. 9, 2002, which is incorporated herein, in its entirety, byreference.

BACKGROUND OF THE INVENTION

The invention relates to a method for predicting the voltage of abattery, in particular of a vehicle battery.

One problem that traditionally occurs is that, for example in a motorvehicle power supply system, the voltage collapses in certain loadconditions when the battery is poor or discharged to such an extent thatimportant systems, such as the braking system, no longer operate fullyand, in some circumstances, the driver can then operate the vehicle onlywith major restrictions.

DE 39 36 638 G1 discloses a method in which the loads on a vehicle powersupply system are switched off or reduced when the vehicle battery stateof charge falls below a specific level, in order to prevent excessivedischarging of the battery. Which load or loads is or are switched offdepends on the group of loads to which it or they belong. By way ofexample, one such group is composed of “conditionally switchable loads”(BSV) and/or “switchable loads” (SV). The group is in this case alwayscompletely switched off, or its consumption is reduced. Each group has apriority relating to vehicle safety and/or its importance. The processof switching off or reducing the individual groups starts with the groupwith the lowest priority. If this does not lead to an improvement in thestate of charge of the battery, further groups are switched off orreduced successively until the battery state of charge reaches aspecific level.

Furthermore, DE 199 60 079 A1 discloses a method for switching variousclasses of loads on and off by means of switching elements within anenergy management process, which is carried out by a controller. Theswitching elements are in this case actuated such that the selectedpriorities for actuation of the switching elements can be changeddynamically during operation. The switching priorities can thus beadapted as a function of the operating state during operation. Loads areswitched off by varying the switching priority such that theperceptibility of the operating states is as far as possible suppressed.

When using this conventional method, a load or a group of loads isswitched off or reduced only once a poor state of charge has alreadybeen found. In order to prevent a safety-relevant system, such as thebraking system, no longer being fully operationally available as aresult of being reduced, a computation-intensive method is in this casecurrently used to calculate the state of charge of the battery, and thisconsiderably increases the costs of the associated controller.

One object of the present invention is thus to provide a simple andcost-effective method for predicting the voltage of a battery, by meansof which a state in which the battery is poor or discharged and in whicha voltage drop can occur in certain load conditions can be predicted,and which has appropriate countermeasures to be initiated before thisstate occurs, in order that specific safety-relevant loads remain fullyoperational.

SUMMARY OF THE INVENTION

According to the invention, this object is achieved by a method forpredicting the voltage of a battery having the features as claimed inclaim 1. Further advantageous developments of the invention arespecified in the dependent claims.

The method according to the invention for predicting the voltage of abattery now allows critical battery states to be identified in goodtime, particularly critical power supply system states in the vehicle,and allows countermeasures to be initiated, such as load shedding orincreasing the engine rotation speed.

These and further objects, features and advantages of the presentinvention will become clear from the following description of onepreferred exemplary embodiment, in conjunction with the drawing, inwhich:

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a flowchart of a method according to the invention forpredicting a voltage of a battery U_pred

FIG. 2 shows a flowchart of a subroutine “calculation of thepolarization voltage U_pol” from FIG. 1,

FIG. 3 shows a flowchart of the subroutine “filtering of thepolarization voltage U_pol” from FIG. 1, and

FIG. 4 shows an illustration of examples of current-dependent profilesof the polarization voltage.

DETAILED DESCRIPTION OF THE INVENTION

The method according to the invention for predicting the voltage of abattery, in particular of a vehicle battery, will be described in moredetail in the following text with reference to the flowcharts shown inFIGS. 1 to 3.

In order to ensure that specific, safety-critical loads, such as theSensotronic Brake Control or SBC (electrohydraulic brakes) remain fullyoperational, the vehicle battery voltage must not fall below a specificminimum voltage, since this results in a voltage drop when a load isapplied. The method according to the invention can now be used topredict what battery voltage U_pred will occur when it is dischargedwith a predetermined current I_pred, that is to say when a defined loadis to be expected.

In a first step S1, actual battery data, such as the battery voltageU_batt, the battery current I_batt, the battery temperature T_batt andthe dynamic internal resistance Rdi of the battery, is detected and ischecked by external detection and calculation devices. In this case, thebattery voltage U_batt, the battery current I_batt, and the batterytemperature T_batt are detected by means of sensors, are transmitted toa control device and are checked by the control device, which carriesout the method according to the invention for predicting the voltage ofa battery. The dynamic internal resistance Rdi is calculated by means ofa known routine, and the calculation result is likewise transmitted tothe control device and is checked by the control device. A method suchas this for calculation of the dynamic internal resistance Rdi is known,for example, from DE 102 08 020 A1, in which the value that is obtainedfor the dynamic internal resistance has already been filtered. Thevalues for the battery voltage U_batt, the battery current I_batt, thebattery temperature T_batt and the dynamic internal resistance Rdi aretransmitted to the control device, and are checked by the controldevice, at predetermined internals t, for example every 50 ms. Negativevalues of the detected values of the battery current I_batt indicatedischarging, and positive values indicate charging of the battery.

A check is then carried out in a step S2 to determine whether thisfunctional procedure is a first procedure. This is done by checking thestate of a bit which is set during a first functional procedure and isreset again on each new start. When the bit is set, that is to say afunctional procedure (step S1 to S12) has already been carried out, theprocedure moves on to step S3. Otherwise, the procedure moves ondirectly to step S5, in order to allow a quick prediction of the batteryvoltage directly after the new start.

A step S3 is used to determine whether a time Tx, in this case 500 ms,has already elapsed, that is to say the procedure moves on to step S4after 500 ms, otherwise the procedure returns to step S1.

If it is found in step S3 that the conditions are satisfied, the batteryvoltage U_batt and the battery current I_batt are filtered by means of alow-pass filter in a step S4. The filtering process results in afiltered battery voltage value U_filt and a filtered battery currentvalue I_filt being determined from the battery voltage U_batt and thebattery current I_batt, with the ripple having been filtered out of eachof them. The filtered battery voltage value U_filt and the filteredbattery current value I_filt after low-pass filtering are obtained fromthe following equations:U_filt(t _(n))=(U_batt−U_filt(_(tn-1)))*(1−exp(−t/T))++U_filt(t _(n-1))I_filt(t _(n))=(I_batt−I_filt(t _(n-1)))*(1−exp(_(—) t/T))++I_filt(t_(n-1))

In this case, T is a filter constant which, for example, is chosen to be500 ms, while t is an interval in which a value record is in each caseread and which is, for example 50 ms. t_(n) is the actual time, whilet_(n-1) is the time of the last calculation. If no previous calculationhas yet taken place, predetermined initialization values are used.

By way of example, values are defined as follows for initializationpurposes, on the basis of the settling times of the low-pass filter thatis used: U_filt=11.8, I_filt=0.0 and Rdi=5.0.

The input variables are read into the low-pass filter as quickly aspossible, provided that the values are valid, that is to say thehardware for detection of the battery voltage U_batt and of the batterycurrent I_batt must produce valid values. A quick prediction is producedon the first function call of the method for predicting the voltage of abattery, for example after a time period Tx, that is to say 500 ms inthe example. The filtering through the low-pass filter is not alsoincluded in this, that is to say the steps S3 and S4 are jumped over inthe first function call. In the first 5 seconds, for example, after thisfunction call, all of the time constants are set to 1 second since thisallows the method to stabilize quickly.

The predicted battery voltage U_pred is calculated, that is to say thefunctional procedure is carried out, after a time period T, that is tosay after 500 ms in the example.

The predicted battery voltage U_pred is calculated only when the batterycurrent I_batt is greater than the predetermined load current I_pred onwhich the prediction is based. A predetermined tolerance Tol ispermitted in this case, for example of 5 A. There is no need to carryout a calculation process for a battery current I_batt that is less thanI_pred, since the drop in voltage at that time would be greater than avoltage drop to be predicted. The procedure then returns to step S1.

A check is thus carried out in step S5 to determine whether thefollowing conditions which are necessary to carry out the calculation ofthe predicted battery voltage U_pred are satisfied:I_filt>(I_pred−Tol)andI_batt>I_pred−Tol

This second-mentioned condition is in this case additionally checked,since greater currents are reached during a starting process but acalculation would otherwise be allowed on the basis of the filter. Sucherrors should, however, be precluded.

If it is found in step S5 that the conditions stated above are notsatisfied, the predicted battery voltage U_pred is not calculated andthe procedure returns to step S1.

If it is found in step S5 that the above conditions are satisfied, thena resistive voltage drop across the dynamic internal resistance Rdi isthen calculated in a step S6. For this purpose, the filtered batterycurrent and internal resistance values (I_filt and Rdi) are used tocalculate the voltage drop U_ri that is produced by the predeterminedload current I_pred through the dynamic internal resistance Rdi, usingthe following formula:U _(—) ri=(I_filt−I_pred)*Rdi

Since the predetermined load current I_pred is always a dischargecurrent, it must also be used in a negative form. The value range forthe predetermined load current I_pred is, for example, between −80 A and−150 A.

A polarization voltage U_pol is then calculated in a step S7. Thesubroutine for calculation of the polarization voltage in step S7 isillustrated in more detail in FIG. 2. The polarization voltage U_pol hasa number of chemical causes, that is to say it is composed of a numberof voltage elements. These voltage elements are, among others, thecrossover voltage or activation voltage, the crystallization voltage andthe diffusion voltage. The crossover voltage results from the localdistribution of the ions first of all having to be built up when acurrent change occurs, and this does not take place as quickly as thecurrent builds up, with the distribution of the charged particles on thesurface being comparable with a capacitor. The crystallization voltageis the voltage required to release molecules on the surface of theelectrode from their compound form and to make them accessible for areaction. Finally, the diffusion voltage is the voltage which isrequired in order to remove the reaction products from the electrodesurface. These voltage elements are each exponentially dependent on thebattery current, specifically the current magnitude and the currentdirection, as well as the temperature.

The entirety of the polarization voltage U_pol can be describedsufficiently accurately by two simple reciprocal functions. Thepolarization voltage U_pol can be determined as follows, although it isin each case necessary to decide whether the battery is being charged,that is to say I_filt>0, or whether the battery is being discharged,that is to say I_filt ? 0.

A decision is therefore first of all made in a step S7-1 as to whetherthe filtered battery current I_filt is greater than zero. Depending onthe decision results, the polarization voltage U_pol is calculated in astep S7-2 a or S7-2 b using the following formula:If 1_filt>0:U_pol=(U_pol_(—)0+(ki_lad+I_filt/(ik_lad+I_filt)))*K ₁.If I_filt ? 0:U_pol=(U_pol_(—)0+(ki_ela−I_filt/(ik_ela−I_filt)))*K ₁

K₁in the above equations is a correction factor which is unity when thepredetermined load current I_pred is −100 A, while it is in the rangebetween −80 A and −150 A, from (1−(I_pred+100)/100*0.2) for apredetermined load current I_pred. It is obvious in this case to thoseskilled in the art that an appropriate, adapted correction value can bedetermined when a load current range other than this load current rangeis desired.

In this case, the parameters U_pol_(—)0, ki_lad, ik_lad, ki_ela andik_ela are predetermined parameters. By way of example, U_pol_(—)0 maybe 0.7 V at 0° C. The temperature dependency is −9 mV/° C. This meansthat:U_pol_(—)0=0.7V−0.009V/° C.*T_batt [T_batt in ° C.]ik_lad and ik_ela are empirical parameters which describe the curvatureof the curve of the polarization voltage U_pol as a function of thefiltered battery current I_filt. FIG. 4 shows one such curved profilefor various battery temperatures T_batt. By way of example, the value ofik_lad may be 80 A, and the value of ik_ela may be 20 A. ki_ela isnon-dimensional and can be defined such that the value for U_pol is 0 Vwhen I_filt=I_pred.

Thus:ki_ela=U_pol_(—)0*(ik_ela−I_pred)/(−I_pred*[VA]) andki_lad=U_pol_(—)0*(ik_lad−I_pred)/(−I_pred*[VA])*K ₂.

A correction factor K₂ must be taken into account during charging, sincevery high overvoltages can occur during charging, which would be toogreat for calculation. This correction or compensation factor K₂ alsoallows these voltages to be calculated.

This description of the polarization voltage U_pol is valid when thebattery is in a quasi-steady state, that is say when it is stabilized,that is to say when the battery current I_batt is constant.

The polarization voltage U_pol varies only slowly as a result of thechemical reactions which are concealed behind this phenomenon. Thechange follows two superimposed time constants. The parameter U_poldetermined as described above thus comprises a fast and a slowlysettling part U_pol_fast_raw and U_pol_slow_raw.U_pol_fast_raw=0.6*U_pol andU_pol_slow_raw=0.4*U_pol,that is to say 60% of U_pol settles quickly, and 40% settles slowly.

The polarization voltage U_pol is thus filtered in a further step S8,whose detailed procedure is illustrated in more detail in FIG. 3, withthis filtering preferably being carried out by two low-pass filters, ineach case one for a faster settling component U_pol_fast_raw of U_poland one for a slowly settling component U_pol_slow_raw of U_pol.

First of all, in a step S8-1, the polarization voltage U_pol issubdivided into the still unfiltered raw values of the polarizationvoltage U_pol_fast_raw and U_pol_slow_raw. These two polarizationvoltage components U_pol_fast_raw and U_pol_slow_raw are then filteredby means of two low-pass filters in a step S8-2.

This results in:

$\begin{matrix}{{{U\_ pol}{\_ fast}{\_ filt}\left( t_{n} \right)} =} & {\left( {{U\_ pol}{\_ fast}{\_ raw}} \right.} \\\; & {{- {Upol\_ fast}}{\_ filt}\left( t_{n - 1} \right)*} \\\; & {{*T} + {{U\_ pol}{\_ fast}{\_ filt}\left( t_{n - 1} \right)}}\end{matrix}$ $\begin{matrix}{{{U\_ pol}{\_ slow}{\_ filt}\left( t_{n} \right)} =} & {\left( {{U\_ pol}{\_ slow}{\_ raw}} \right.} \\\; & {{- {Upol\_ slow}}{\_ filt}\left( t_{n - 1} \right)*} \\\; & {{*T} + {{U\_ pol}{\_ slow}{\_ filt}\left( t_{n - 1} \right)}}\end{matrix}$

The time constants of the low-pass filters for U_pol_fast_raw andU_pol_slow_raw are in this case different depending on whether chargingis taking place, that is to say I_filt>0, or discharging is takingplace, that is to say I_filt ? 0. By way of example, the time constantsare:If I_filt>0:T for U_pol_fast_filt=1 secondT for U_pol_slow_filt=1 minuteIf I_mean ? 0:T for U_pol_fast_filt=1 secondT for U_pol_slow_filt=30 seconds

The filtered values of the two polarization voltage componentsU_pol_fast_filt and U_pol_slow_filt are then added in a further stepS8-3 in order to obtain a filtered polarization voltage U_pol_filt.

These values for parameters for determination of the polarizationvoltage are likewise only examples, and do not represent anyrestriction.

The predicted battery voltage U pred is then calculated in a step S9,which is carried out after this, from the voltage values as determinedin the steps S4, S6 and S7 and S8 for the filtered battery voltageU_filt, the resistive voltage drop U_ri and the filtered polarizationvoltage U_pol_filt, using the following formula:U_pred=U_filt−U _(—) ri−U_pol_filt

The predicted battery voltage U_pred determined in this way in step S9is also limited upwards and downwards in step S10 by, by way of example,defining 12.5 V as the maximum value U_pred_max and 10 V as the minimumvalue U_pred_min. In this case, it is not absolutely essential to limitupwards, since the battery charge is in any case sufficient there;nevertheless, in the preferred exemplary embodiment, the maximum valueU_pred_max is fixed at a value close to a normal value of a fullycharged battery in the rest state. Limiting downwards is, however,always necessary by means of a minimum value U_pred_min since, belowthis voltage level, the battery is aged or being discharged or the likesuch that it is no longer possible to reliably predict the batteryvoltage on the basis of an exponentially falling voltage below thisthreshold value. In the situation where the predicted battery voltageU_pred is between the limit values U_pred_min and U_pred_max, thepredicted battery voltage is then filtered in a further step S11, inwhich case the time constant T of this filter may be 3 minutes both fornegative and for positive current levels. This further filtering in stepS11 filters out sudden changes which occur as a result of switching fromcharging to discharging.

Thus:U_pred_filt(t _(n))=(U_pred_raw−U_pred_filt(t _(n-1)))*T++U_pred_filt(t_(n-1))where, for example, T is chosen to be 3 minutes.

Finally, a check is carried out in step S12 to determine whether the bitwhich indicates whether a first function call has already been made isset. If the bit is not set, this bit is set, and the procedure thenreturns to step S1. Otherwise, the procedure returns directly to stepS1.

This means that a battery voltage can be determined reliably, inparticular of a vehicle battery when loaded with a load current, definedin advance, of I_pred. This prediction can be used for batteries of alltypes, in particular for vehicle batteries of any type, size andcapacity.

In summary, the present invention discloses a method for predicting thevoltage of a battery, in particular of a vehicle battery. The methodaccording to the invention makes it possible to predict a voltage dropbefore it actually occurs as a result of a load. For this purpose, afiltered battery voltage and a filtered battery current are first of alldetermined from battery data, such as the battery voltage, the batterycurrent, the battery temperature and the dynamic internal resistance.The resistive voltage drop across the dynamic internal resistance isdetermined from the difference current between the filtered batterycurrent and the predetermined load current. Furthermore, a polarizationvoltage is calculated as a function of the filtered battery current, andis then filtered. A predicted battery voltage is calculated from thefiltered battery voltage, minus the resistive voltage drop and thefiltered polarization voltage. This predicted battery voltage can beused to decide on further measures.

1. A method for predicting the voltage of a battery, having thefollowing steps: (S1) determining and checking battery data, bydetection and calculation devices, with the battery data comprising abattery voltage (U_batt), a battery current (I_batt), a batterytemperature (T_batt) and a dynamic internal resistance (Rdi), (S2)checking whether present functional procedure is a first procedure, (S3)if the result in step S2 is that a functional procedure has already beencarried out, checking whether a predetermined time (Tx) has elapsed,and, if the predetermined time has not yet elapsed, returning to stepS1, (S4) if the predetermined time (Tx) has elapsed, filtering of thebattery voltage (U_batt) and of the battery current (I_batt) using alow-pass filter, and emission of a filtered battery voltage (U_filt) andof a filtered battery current (I_filt), (S5) checking whether thefiltered battery current (I_filt) is greater than a predetermined load(I_pred) minus a tolerance (Tol), and whether the battery current(I_batt) is greater than a predetermined load current (I_pred) minus thetolerance (Tol) and, if the conditions are not satisfied, returning tostep S1, (S6) calculation of a resistive voltage drop (U_ri) across thedynamic internal resistance (Rdi), (S7) calculation of a polarizationvoltage (U_pol) as a function of the filtered battery current(I_batt_filt), (S8) filtering of the polarization voltage (U_pol), usingtwo low-pass filters separately on the basis of a fast settlingcomponent (U_pol_fast_raw) and a slowly settling component(U_pol_slow_raw) and emission of a filtered polarization voltage(U_pol_filt), (S9) calculation of a predicted battery voltage bysubtracting the resistive voltage drop (U_ri) and the filteredpolarization voltage (U_pol_filt) from the filtered battery voltage(U_batt_filt), (S10) limiting of the predicted battery voltage (U_pred)determined in step S9 upwards and downwards, (S11) filtering of thepredicted battery voltage (U_pred), and (S12) checking whether the a bitwhich indicates that a first function call has been carried out is setand, if not, setting the bit and returning to step S1, or, if yes,returning to step S1.
 2. The method for predicting the voltage of abattery as claimed in claim 1, wherein the dynamic internal resistance(Rdi) is determined by means of an algorithm.
 3. The method forpredicting the voltage of a battery as claimed in claim 1, wherein thepredetermined time (Tx) in step S3 is 500 ms.
 4. The method forpredicting the voltage of a battery as claimed in claim 1, wherein thefiltered battery voltage (U_filt) and the filtered battery current(I_filt) are obtained from the following equations:U_filt(t _(n))=(U_batt−U_filt(_(tn-1)))*(1 exp(−t/T))++U_filt(t ₁)l_filt(t _(n))=(I_batt−I_filt(t _(n-1)))*(1 exp(−t/T))++I_filt(t _(n-1))where T is a filter constant for the low pass filter utilized, t is aninterval in which a value record is in each case read and t_(n) is theactual time, while t_(n-1) is the time of the last calculation.
 5. Themethod for predicting the voltage of a battery as claimed in claim 1,wherein steps S3 and S4 are jumped over and the method proceeds directlyto step S5 if a first functional procedure directly after a start of themethod is detected in step S2.
 6. The method for predicting the voltageof a battery as claimed in claim 1, wherein the tolerance (Tol) ischosen to be 5A.
 7. The method for predicting the voltage of a batteryas claimed in claim 1, wherein the resistive voltage drop is calculatedusing the following equation:U_ri=(I_filt−I_pred) *Rdi.
 8. The method for predicting the voltage of abattery as claimed in claim 1, wherein the polarization voltage (U_pol)is calculated taking into account the stated conditions using thefollowing equations:If I_filt>0:U_pol=(U_pol0+(ki_lad*I_filt/(ik_lad+I_filt)))**K₁.If I_fil≦0:U_pol=(U_pol_(—)0+(ki_ela*I_filt/(ik_ela−I_filt)))**K₁, where K is acorrection factor which is dependent on the predetermined load (I_pred),and parameters U_pol_(—)0, ki_lad, ik_lad ki_ela and ik_ela arepredetermined parameters which have been determined empirically, andki_ela can be defined such that the value of the polarization voltage(U_pol) is 0 V if the filtered battery current (I_filt) is equal to thepredetermined load current (I_pred).
 9. The method for predicting thevoltage of a battery as claimed in claim 1, wherein the polarizationvoltage (U_pol) has a fast settling component (U_pol_fast_raw) and aslowly settling component (U_pol_slow_raw), with the fast settlingcomponent (U_pol_fast_raw) making up 60% of the polarization voltage(U_pol) and the slowly settling component (U_pol_slow_raw) making up 40%of the polarization voltage (U_pol), and each of these two componentsbeing filtered by a low-pass filter in step S8, thus resulting in thefollowing equations: $\begin{matrix}{{{U\_ pol}{\_ fast}{\_ filt}\left( t_{n} \right)} =} & {\left( {{{U\_ pol}{\_ fast}{\_ raw}} -} \right.} \\\; & {{- {Upol\_ fast}}{\_ filt}\left( t_{n - 1} \right)*} \\\; & {{*T} + {{U\_ pol}{\_ fast}{\_ filt}\left( t_{n - 1} \right)}}\end{matrix}$ $\begin{matrix}{{{U\_ pol}{\_ slow}{\_ filt}\left( t_{n} \right)} =} & {\left( {{{U\_ pol}{\_ slow}{\_ raw}} -} \right.} \\\; & {{- {Upol\_ slow}}{\_ filt}\left( t_{n - 1} \right)*} \\\; & {{*T} + {{U\_ pol}{\_ slow}{\_ filt}\left( t_{n - 1} \right)}}\end{matrix}$ and the overall filtered polarization voltage (U_pol_filt)is obtained by addition of the two filtered components of thepolarization voltage (U_pol_fast_filt, U_pol_slow_filt).
 10. The methodfor predicting the voltage of the battery as claimed in claim 8, whereinthe correction factor K₁ is unity when the predetermined load current(I_pred) is −100 A, while it is obtained from (1−(I_pred+100)/100*0.2)for a predetermined load current (I_pred) between −80 A and −150 A.